# import os
# import config
# import logging
#
#
# def Log(log):
#     # 创建一个日志记录器
#     logger = logging.getLogger()
#
#     # 设置日志级别
#     logger.setLevel(logging.DEBUG)
#
#     # 创建一个文件处理器，并指定编码为utf-8
#     log_path = config.BASE_DIR + "/report/app.log"
#     file_handler = logging.FileHandler(log_path, encoding='utf-8')
#     formatter = logging.Formatter('%(asctime)s - %(levelname)s - %(message)s')
#     file_handler.setFormatter(formatter)
#
#     # 将处理器添加到记录器
#     logger.addHandler(file_handler)
#
#     # 记录调试信息
#     logger.debug(log)
#
#
# log = Log('ababb ')

import logging
import os
import config  # 确保导入了正确的 config 模块


# 创建并配置日志记录器
def setup_logger():
    log_path = os.path.join(config.BASE_DIR, 'report', 'app.log')

    # 确保日志目录存在
    log_dir = os.path.dirname(log_path)
    if not os.path.exists(log_dir):
        os.makedirs(log_dir)

    # 创建日志记录器
    logger = logging.getLogger()

    # 避免重复添加 handler，先移除已有的 handler
    if logger.hasHandlers():
        logger.handlers.clear()

    # 设置日志级别
    logger.setLevel(logging.DEBUG)

    # 创建一个文件处理器，并指定编码为utf-8
    file_handler = logging.FileHandler(log_path, encoding='utf-8')
    formatter = logging.Formatter('%(asctime)s - %(levelname)s - %(message)s')
    file_handler.setFormatter(formatter)

    # 将处理器添加到记录器
    logger.addHandler(file_handler)

    return logger


# 日志记录函数
def Log(log_message):
    # 获取配置好的日志记录器
    logger = logging.getLogger()

    # 记录调试信息
    logger.debug(log_message)


# 配置日志记录器
setup_logger()

# 记录一条调试信息
Log('This is a debug message.')
